System-on-Chip technology enables even rather complex systems for communication between various modules of an integrated circuit (for example, a processing unit, memories, peripherals, and other dedicated units) to be implemented so as to ensure that system performance specifications are met.
Various possible applications provided by a SoC may be subjected to specific constraints in terms of bandwidth, and the corresponding interconnection may need to be able to offer a certain quality of service (QoS) so as to guarantee, for example, a minimum value of bandwidth in the communications between modules, with modules that may also present requirements that differ from one to another and/or that vary over time.
For example, US 2007/0274331 A1 (which corresponds to EP 1 863 232 A1) describes a bandwidth-allocating device comprising network interfaces with means for filling a header field of each data packet transmitted with header-field information that depends upon a value of requested bandwidth. The transmission of the data packets through the router of the system is controlled according to the information provided in the header field of each data packet.
In US 2010/081144 (which corresponds to EP 2 247 045A1), a device is described for measuring the bandwidth used by each initiator (Measured Bandwidth MBW) and comparing the measured value with the value of requested bandwidth (Requested Bandwidth—RBW). When the measured bandwidth is less than the requested bandwidth, the control device increases the value of a priority associated to the transfer, and vice versa, when the measured bandwidth exceeds the requested bandwidth, the priority is decreased. That document mentions also the possibility of modifying, instead of the priority, any other parameter that affects operation of the arbiter and has an effect on the bandwidth, such as, for example, the distance between the request transactions (transaction distance).
In summary, the solutions outlined previously aim at implementing a distributed arbitration mechanism based upon the “end-to-end” property, which identifies the possibility of fixing the requirements in terms of performance at the input points of the network, rendering the performance as independent as possible of what happens within the network itself.
In particular, the solution referred to in US 2007/0274331 A1 (which corresponds to EP 1 863 232 A1) implements an arbitration scheme of a round-robin end-to-end type with the possibility of fixing the requests in terms of bandwidth at the input points of the network. For the reasons outlined, this solution may present critical aspects of operation linked to the non-ideal behavior of real systems, which may be put down, for example, to the fact that the traffic associated to the initiators (IP) may not be uniform and may be subject to conversions (both of frequency and of size of the data), interference in terms of traffic on the network, variations of the storage efficiency, and a certain “granularity” of the arbitration action.
There is, therefore, a need in the art for improved bandwidth allocation.